package com.spa.infrastructure.repository.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

@Getter
@Setter
@TableName("s_ticket")
public class TicketPO extends GenericPO {

    /** 优惠券名称 */
    @TableField(value = "name")
    private String name;

    /** 优惠券类型 */
    @TableField(value = "type")
    private Integer type;

    /** 最低消费金额 */
    @TableField(value = "threshold")
    private Integer threshold;

    /** 1被删除 */
    @TableField(value = "is_del")
    private Integer isDel;

    /** 优惠方式 1：满减，2：折扣 */
    @TableField(value = "discount_type")
    private Integer discountType;

    /** 限制 （满减时有用）*/
    @TableField(value = "overflow")
    private Integer overflow;

    /** 优惠券面额*/
    @TableField(value = "rmb")
    private Integer rmb;

    /** 折扣 （折扣时有用）*/
    @TableField(value = "discount")
    private Integer discount;

    /** 生效方式  领取后生效 有效期*/
    @TableField(value = "expiration_date")
    private Integer expirationDate;

    /** 生效方式 1：领取后生效，2：固定时间*/
    @TableField(value = "come_into_force_type")
    private Integer comeIntoForceType;

    /** 生效方式  固定时间 开始时间*/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "begin_date")
    private Date beginDate;

    /** 生效方式 固定时间 结束时间*/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "end_date")
    private Date endDate;

    /** 发放总量 -1：不做限制*/
    @TableField(value = "quantity_limit")
    private Integer quantityLimit;

}
